/* 路由路径配置 */

// 引入路由组件，@ 代表 src 目录的绝对路径
const NavBar = () => import('@/components/nav-bar')
const TabBar = () => import('@/components/tab-bar')
const Home = () => import('@/views/home')
const Cart = () => import('@/views/cart')
const Category = () => import('@/views/category')
const SubCategory = () => import('@/views/category/SubCategory')
const Detail = () => import('@/views/detail')
const Mine = () => import('@/views/mine')
const Search = () => import('@/views/search')
const Login = () => import('@/views/login')
const HomeCat = () => import('@/views/home/HomeCat')
// 定义路径数组
const routes = [
  {
    path: '/',
    redirect: '/home', // 重定向
  },
  {
    path: '/home',
    // component: Home, // 向名称为 default 的视图中渲染
    components: {
      default: Home,
      footer: TabBar,
    },
    children: [ // 子路由、嵌套路由
      {
        path: 'home-cat/:hid?', // 完整路径：/category/sub-category/5，:cid 是动态路径参数的定义
        component: HomeCat,
      },
    ],
    meta: { // meta，路由元信息，是在开发过程中需要使用到的一些额外数据
      inTabBar: true, // 是否显示到 tabbar 上
      title: '首页', // 显示的文本标题
      icon: '&#xe626;', // tabbar 图标 unicode 编码
    },
  },
  {
    path: '/search',
    // component: Home, // 向名称为 default 的视图中渲染
    components: {
      default: Search,
    },
    meta: { // meta，路由元信息，是在开发过程中需要使用到的一些额外数据
      title: '搜索',
    },
  },
  {
    path: '/category',
    components: {
      header: NavBar,
      default: Category,
      footer: TabBar,
    },
    children: [ // 子路由、嵌套路由
      {
        path: 'sub-category/:cid?', // 完整路径：/category/sub-category/5，:cid 是动态路径参数的定义
        component: SubCategory,
      },
    ],
    meta: { // meta，路由元信息，是在开发过程中需要使用到的一些额外数据
      inTabBar: true, // 是否显示到 tabbar 上
      title: '分类', // 显示的文本标题
      icon: '&#xe605;', // tabbar 图标 unicode 编码
    },
  },
  {
    path: '/cart',
    components: {
      header: NavBar,
      default: Cart,
    },
    meta: { // meta，路由元信息，是在开发过程中需要使用到的一些额外数据
      inTabBar: true, // 是否显示到 tabbar 上
      title: '购物车', // 显示的文本标题
      icon: '&#xe60a;', // tabbar 图标 unicode 编码
    },
  },
  {
    path: '/detail',
    components: {
      header: NavBar,
      default: Detail,
    },
    meta: { // meta，路由元信息，是在开发过程中需要使用到的一些额外数据
      title: '商品详情', // 显示的文本标题
    },
  },
  {
    path: '/mine',
    components: {
      header: NavBar,
      default: Mine,
      footer: TabBar,
    },
    meta: { // meta，路由元信息，是在开发过程中需要使用到的一些额外数据
      inTabBar: true, // 是否显示到 tabbar 上
      title: '我的', // 显示的文本标题
      icon: '&#xe63a;', // tabbar 图标 unicode 编码
    },
  },
  {
    path: '/login',
    name: 'login',
    components: {
      default: Login,
    },
    meta: { // meta，路由元信息，是在开发过程中需要使用到的一些额外数据

      title: '登陆', // 显示的文本标题

    },
  },
]

export default routes
